package com.example.vote.flow.pojo.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;

@Data
@Schema(description = "投票记录视图对象Class")
public class VoteRecordVO implements Serializable {

    @Schema(description = "记录ID")
    private Long id;

    @Schema(description = "投票用户的ID")
    private Long userId;

    @Schema(description = "投票用户的用户名")
    private String username;

    @Schema(description = "所属投票主题的ID")
    private Long voteTopicId;

    @Schema(description = "投票标题")
    private String voteTopicTitle;

    @Schema(description = "投票选项的ID")
    private Long voteOptionId;

    @Schema(description = "投票时间（yyyy-MM-dd）")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime voteTime;

    @Schema(description = "投票时的IP地址")
    private String ipAddress;

}